#ifndef THINK_THINK_EXCEPTION_ERROREXCEPTION_H
#define THINK_THINK_EXCEPTION_ERROREXCEPTION_H

static char* think_exception_errorexception =
	"\n"
	"// +----------------------------------------------------------------------\n"
	"// | ThinkPHP [ WE CAN DO IT JUST THINK ]\n"
	"// +----------------------------------------------------------------------\n"
	"// | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved.\n"
	"// +----------------------------------------------------------------------\n"
	"// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )\n"
	"// +----------------------------------------------------------------------\n"
	"// | Author: 麦当苗儿 <zuojiazi@vip.qq.com> <http://zjzit.cn>\n"
	"// +----------------------------------------------------------------------\n"
	"\n"
	"namespace think\\exception;\n"
	"\n"
	"use think\\Exception;\n"
	"\n"
	"/**\n"
	" * ThinkPHP错误异常\n"
	" * 主要用于封装 set_error_handler 和 register_shutdown_function 得到的错误\n"
	" * 除开从 think\\Exception 继承的功能\n"
	" * 其他和PHP系统\\ErrorException功能基本一样\n"
	" */\n"
	"class ErrorException extends Exception\n"
	"{\n"
	"    /**\n"
	"     * 用于保存错误级别\n"
	"     * @var integer\n"
	"     */\n"
	"    protected $severity;\n"
	"\n"
	"    /**\n"
	"     * 错误异常构造函数\n"
	"     * @param integer $severity 错误级别\n"
	"     * @param string  $message  错误详细信息\n"
	"     * @param string  $file     出错文件路径\n"
	"     * @param integer $line     出错行号\n"
	"     * @param array   $context  错误上下文，会包含错误触发处作用域内所有变量的数组\n"
	"     */\n"
	"    public function __construct($severity, $message, $file, $line, array $context = [])\n"
	"    {\n"
	"        $this->severity = $severity;\n"
	"        $this->message  = $message;\n"
	"        $this->file     = $file;\n"
	"        $this->line     = $line;\n"
	"        $this->code     = 0;\n"
	"\n"
	"        empty($context) || $this->setData(\'Error Context\', $context);\n"
	"    }\n"
	"\n"
	"    /**\n"
	"     * 获取错误级别\n"
	"     * @return integer 错误级别\n"
	"     */\n"
	"    final public function getSeverity()\n"
	"    {\n"
	"        return $this->severity;\n"
	"    }\n"
	"}\n"
	"\n"
;
#endif